<html>
<head><meta charset="utf-8"><title>meeting 2020-11-17 · wg-traits · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/index.html">wg-traits</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html">meeting 2020-11-17</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="217061891"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217061891" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217061891">(Nov 17 2020 at 20:59)</a>:</h4>
<p>I'm going to be a tad late</p>



<a name="217062316"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062316" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062316">(Nov 17 2020 at 21:03)</a>:</h4>
<p>Okay <span class="user-group-mention" data-user-group-id="692">@WG-traits</span>, meeting time</p>



<a name="217062349"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062349" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062349">(Nov 17 2020 at 21:03)</a>:</h4>
<p>Who's around?</p>



<a name="217062534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062534">(Nov 17 2020 at 21:04)</a>:</h4>
<p>I'm around</p>



<a name="217062543"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062543" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062543">(Nov 17 2020 at 21:05)</a>:</h4>
<p>Sorry I'm a few minutes late</p>



<a name="217062596"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062596" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062596">(Nov 17 2020 at 21:05)</a>:</h4>
<p>No worries. We probably don't have a ton to talk about.</p>



<a name="217062633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062633">(Nov 17 2020 at 21:05)</a>:</h4>
<p>Yeah, maybe not.</p>



<a name="217062648"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062648" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062648">(Nov 17 2020 at 21:06)</a>:</h4>
<p>I did do a bit of experimentation towards removing <code>Param</code> from rustc</p>



<a name="217062658"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062658" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062658">(Nov 17 2020 at 21:06)</a>:</h4>
<p>But, <span class="user-mention" data-user-id="116009">@nikomatsakis</span> you said yesterday you wanted to talk about something related to type library? Or am I misremembering</p>



<a name="217062695"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062695" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062695">(Nov 17 2020 at 21:06)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/144729-wg-traits/topic/meeting.202020-11-17/near/217062648">said</a>:</p>
<blockquote>
<p>I did do a bit of experimentation towards removing <code>Param</code> from rustc</p>
</blockquote>
<p>Oh, I want to hear about this!</p>



<a name="217062728"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062728" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062728">(Nov 17 2020 at 21:06)</a>:</h4>
<p>I don't remember what I said yesterday :)</p>



<a name="217062756"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062756" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062756">(Nov 17 2020 at 21:06)</a>:</h4>
<p>I wouldn't mind reviewing the plan we had made and checking if there are open issues or next steps we can advertise</p>



<a name="217062787"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062787" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062787">(Nov 17 2020 at 21:07)</a>:</h4>
<p>re: removing Param, I started experimenting by introducing a <code>EarlyBound&lt;T&gt;</code> wrapper similar to <code>Binder</code></p>



<a name="217062815"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062815" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062815">(Nov 17 2020 at 21:07)</a>:</h4>
<p>i.e., when you fetch <code>tcx.type_of(def_id)</code> you get back <code>EarlyBound&lt;Ty&lt;'tcx&gt;&gt;</code> and not just <code>Ty&lt;'tcx&gt;</code></p>



<a name="217062831"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062831" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062831">(Nov 17 2020 at 21:07)</a>:</h4>
<p>the idea is partly just for me to get a feeling of where/how things are used :)</p>



<a name="217062842"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062842" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062842">(Nov 17 2020 at 21:07)</a>:</h4>
<p>but basically you can only invoke <code>subst</code> on <code>EarlyBound&lt;T&gt;</code></p>



<a name="217062854"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062854" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062854">(Nov 17 2020 at 21:07)</a>:</h4>
<p>I don't envision this as the ultimate end-state</p>



<a name="217062923"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062923" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062923">(Nov 17 2020 at 21:08)</a>:</h4>
<p>but it does force me to say explicitly those cases where we are using (1) the types as placeholders or (2) the places where we are substituting</p>



<a name="217062945"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062945" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062945">(Nov 17 2020 at 21:08)</a>:</h4>
<p>interesting</p>



<a name="217062955"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062955" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062955">(Nov 17 2020 at 21:08)</a>:</h4>
<p>how far did that get you?</p>



<a name="217062963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062963">(Nov 17 2020 at 21:08)</a>:</h4>
<p>and look for places where it seems like we're doing neither of those things ..</p>



<a name="217062974"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217062974" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217062974">(Nov 17 2020 at 21:08)</a>:</h4>
<p>well I got rustc_middle building but not the rest yet :P</p>



<a name="217063003"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063003" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063003">(Nov 17 2020 at 21:09)</a>:</h4>
<p>rustc_typeck and friends will be more interesting</p>



<a name="217063007"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063007" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063007">(Nov 17 2020 at 21:09)</a>:</h4>
<p>hey, that's a start</p>



<a name="217063020"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063020" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063020">(Nov 17 2020 at 21:09)</a>:</h4>
<p>so far it felt like code <em>mostly</em> fit the model</p>



<a name="217063059"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063059" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063059">(Nov 17 2020 at 21:09)</a>:</h4>
<p>one interesting third case is that there is some code that wants to treat the values as <em>bound</em> -- basically the implementation of those queries that return <code>EarlyBound</code></p>



<a name="217063060"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063060" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063060">(Nov 17 2020 at 21:09)</a>:</h4>
<p>nice</p>



<a name="217063102"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063102" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063102">(Nov 17 2020 at 21:09)</a>:</h4>
<p>I did get to thinking about another approach but I think I decided it's too far-fetched</p>



<a name="217063179"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063179" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063179">(Nov 17 2020 at 21:10)</a>:</h4>
<p>the idea being basically to pair each type with its own substitution that is applied "lazilly"</p>



<a name="217063251"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063251" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063251">(Nov 17 2020 at 21:10)</a>:</h4>
<p>hmm</p>



<a name="217063260"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063260" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063260">(Nov 17 2020 at 21:10)</a>:</h4>
<p>so that whenever you have a type that may contain <em>placeholders</em> you're actually passing around a <code>(Ty, Subst)</code> pair</p>



<a name="217063271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063271">(Nov 17 2020 at 21:10)</a>:</h4>
<p>and you never actually <em>fold</em> the <code>Ty</code></p>



<a name="217063301"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063301" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063301">(Nov 17 2020 at 21:11)</a>:</h4>
<p>what would be the subst?</p>



<a name="217063313"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063313" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063313">(Nov 17 2020 at 21:11)</a>:</h4>
<p>let me illustrate by example</p>



<a name="217063326"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063326" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063326">(Nov 17 2020 at 21:11)</a>:</h4>
<p><code>fn foo&lt;T&gt;() -&gt; Box&lt;T&gt;</code></p>



<a name="217063333"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063333" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063333">(Nov 17 2020 at 21:11)</a>:</h4>
<p>the return type of this might be <code>Box&lt;^0&gt;</code></p>



<a name="217063363"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063363" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063363">(Nov 17 2020 at 21:11)</a>:</h4>
<p>if I call it like <code>foo::&lt;u32&gt;</code>, I would pass around <code>(Box&lt;^0&gt;, [0=u32])</code></p>



<a name="217063448"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063448" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063448">(Nov 17 2020 at 21:12)</a>:</h4>
<p>anyway, you should just ignore me, because I don't really know if this would even work, and it would probalby be a lot of work to find out</p>



<a name="217063482"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063482" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063482">(Nov 17 2020 at 21:12)</a>:</h4>
<p>fair enough</p>



<a name="217063484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063484">(Nov 17 2020 at 21:12)</a>:</h4>
<p>I've seen some papers that take approaches <em>sort of</em> like this for performance reasons, where they kind of introduce <code>T = Substitution(T')</code> as a kind of type</p>



<a name="217063495"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063495" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063495">(Nov 17 2020 at 21:12)</a>:</h4>
<p>basically so that they don't have to eagerly apply substitutions</p>



<a name="217063501"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063501" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063501">(Nov 17 2020 at 21:12)</a>:</h4>
<p>unless it matters</p>



<a name="217063534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063534">(Nov 17 2020 at 21:13)</a>:</h4>
<p>anyway I expect to keep pushing a bit on the <code>EarlyBound</code> code I was writing to see if I find other interesting cases</p>



<a name="217063564"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063564" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063564">(Nov 17 2020 at 21:13)</a>:</h4>
<p>I can already see that you get to a bit of the annoyance you get to with <code>Binder</code></p>



<a name="217063581"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063581" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063581">(Nov 17 2020 at 21:13)</a>:</h4>
<p>awesome! Keep me/us updated!</p>



<a name="217063582"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063582" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063582">(Nov 17 2020 at 21:13)</a>:</h4>
<p>e.g., you want to do some "mapping" within the binder and it's not as ergonomic or convenient as you might like</p>



<a name="217063614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063614">(Nov 17 2020 at 21:13)</a>:</h4>
<p>I guess I can adopt a similar <code>rebind</code> convention</p>



<a name="217063706"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063706" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063706">(Nov 17 2020 at 21:14)</a>:</h4>
<p>I mean, I think eventually early and late bound might just be merged right</p>



<a name="217063800"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063800" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063800">(Nov 17 2020 at 21:15)</a>:</h4>
<p>yes</p>



<a name="217063804"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063804" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063804">(Nov 17 2020 at 21:15)</a>:</h4>
<p>that's my point</p>



<a name="217063821"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063821" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063821">(Nov 17 2020 at 21:15)</a>:</h4>
<p>sorry, I didn't make that clear</p>



<a name="217063831"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063831" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063831">(Nov 17 2020 at 21:15)</a>:</h4>
<p>I meant that I should align the conventions closely :)</p>



<a name="217063840"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063840" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063840">(Nov 17 2020 at 21:15)</a>:</h4>
<p>agreed :)</p>



<a name="217063884"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063884" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063884">(Nov 17 2020 at 21:15)</a>:</h4>
<p>(that said it is plausible that this <code>EarlyBound</code> work <em>could</em> land, depending how it turns out, as an intermediate step)</p>



<a name="217063927"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063927" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063927">(Nov 17 2020 at 21:16)</a>:</h4>
<p>any other updates I guess?</p>



<a name="217063957"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063957" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063957">(Nov 17 2020 at 21:16)</a>:</h4>
<p>on my end, I'm running into <code>the parameter type may not live long enough</code> errors when compiling</p>



<a name="217063969"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217063969" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217063969">(Nov 17 2020 at 21:16)</a>:</h4>
<p>trying to track that down</p>



<a name="217064022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064022">(Nov 17 2020 at 21:16)</a>:</h4>
<p>I obviously made a mistake somewhere</p>



<a name="217064055"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064055" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064055">(Nov 17 2020 at 21:17)</a>:</h4>
<p>I don't remember, did we have a hackmd about current sprint/type library?</p>



<a name="217064062"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064062" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064062">(Nov 17 2020 at 21:17)</a>:</h4>
<p>I think yes but I don't have a link</p>



<a name="217064109"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064109" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064109">(Nov 17 2020 at 21:17)</a>:</h4>
<p><a href="https://hackmd.io/vSz1MfmBSDSx5NkowiIUfQ">https://hackmd.io/vSz1MfmBSDSx5NkowiIUfQ</a> is probably it</p>



<a name="217064131"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064131" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064131">(Nov 17 2020 at 21:18)</a>:</h4>
<p>that looks right</p>



<a name="217064274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064274">(Nov 17 2020 at 21:18)</a>:</h4>
<p>so, a few of these are done now</p>



<a name="217064325"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064325" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064325">(Nov 17 2020 at 21:19)</a>:</h4>
<p><span class="user-mention" data-user-id="255061">@Léo Lanteri Thauvin</span> was attempting to do some refactoring to rustc?</p>



<a name="217064342"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064342" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064342">(Nov 17 2020 at 21:19)</a>:</h4>
<p>which refactoring?</p>



<a name="217064346"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064346" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064346">(Nov 17 2020 at 21:19)</a>:</h4>
<p>in terms of moving things out of rustc_middle</p>



<a name="217064349"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064349" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064349">(Nov 17 2020 at 21:19)</a>:</h4>
<p>I've done some work on updating chalk to 0.39 in rustc. <a href="https://github.com/rust-lang/chalk/issues/234">https://github.com/rust-lang/chalk/issues/234</a> is the last large issue on the Chalk side I think (switching to the recursive solver leads to some other issues).</p>



<a name="217064375"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064375" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Léo Lanteri Thauvin <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064375">(Nov 17 2020 at 21:19)</a>:</h4>
<p>Not made a lot of progress, but yes I was trying to do things</p>



<a name="217064382"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064382" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064382">(Nov 17 2020 at 21:19)</a>:</h4>
<p>Ah yes, good old <a href="https://github.com/rust-lang/chalk/issues/234">chalk#234</a></p>



<a name="217064469"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064469" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064469">(Nov 17 2020 at 21:20)</a>:</h4>
<p>Is it using the SLG solver in rustc?</p>



<a name="217064484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064484">(Nov 17 2020 at 21:20)</a>:</h4>
<p>yes</p>



<a name="217064497"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064497" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064497">(Nov 17 2020 at 21:20)</a>:</h4>
<p>Ah</p>



<a name="217064511"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064511" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064511">(Nov 17 2020 at 21:20)</a>:</h4>
<p>Someone should probably look at why the recursive solver is having problems</p>



<a name="217064522"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064522" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064522">(Nov 17 2020 at 21:20)</a>:</h4>
<p>What issues does the recursive solver run into?</p>



<a name="217064590"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064590" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064590">(Nov 17 2020 at 21:20)</a>:</h4>
<p>last time I checked, it was something related to binders</p>



<a name="217064637"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064637" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064637">(Nov 17 2020 at 21:21)</a>:</h4>
<p>don't remember exactly</p>



<a name="217064720"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064720" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064720">(Nov 17 2020 at 21:21)</a>:</h4>
<p>I'm also looking at getting NLL to emit better HRTB errors. Errors directly from subtyping now almost match the current errors. The errors from queries are harder, but I think that this approach can work.</p>



<a name="217064722"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064722" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064722">(Nov 17 2020 at 21:21)</a>:</h4>
<p>ok</p>



<a name="217064723"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064723" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064723">(Nov 17 2020 at 21:21)</a>:</h4>
<p>but I haven't checked recently if that was fixed by the function arg WF change</p>



<a name="217064864"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064864" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064864">(Nov 17 2020 at 21:22)</a>:</h4>
<p>There's still some issues with how clauses generated for WF goals are handled.</p>



<a name="217064888"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064888" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064888">(Nov 17 2020 at 21:22)</a>:</h4>
<p>My plan <em>was</em> to update chalk in rustc after I get to a good stopping point with the binder refactor, but seems like <span class="user-mention" data-user-id="116118">@Matthew Jasper</span> is on that</p>



<a name="217064945"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217064945" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217064945">(Nov 17 2020 at 21:23)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116118">Matthew Jasper</span> <a href="#narrow/stream/144729-wg-traits/topic/meeting.202020-11-17/near/217064864">said</a>:</p>
<blockquote>
<p>There's still some issues with how clauses generated for WF goals are handled.</p>
</blockquote>
<p>I wonder if we're missing a generalize somewhere</p>



<a name="217065001"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065001" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065001">(Nov 17 2020 at 21:23)</a>:</h4>
<p>To be specific. The issue is what clause should we generate for <code>Canonical(WF(&amp;'^0 ()))</code>.</p>



<a name="217065019"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065019" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065019">(Nov 17 2020 at 21:23)</a>:</h4>
<p>We might see issues pop up after <a href="https://github.com/rust-lang/chalk/issues/624">chalk#624</a> gets merged</p>



<a name="217065037"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065037" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065037">(Nov 17 2020 at 21:24)</a>:</h4>
<p>oh right</p>



<a name="217065107"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065107" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065107">(Nov 17 2020 at 21:24)</a>:</h4>
<p>I ran into this at one point</p>



<a name="217065117"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065117" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065117">(Nov 17 2020 at 21:24)</a>:</h4>
<p>Either we can reuse the binders from the canonical, or we could try to generate <code>for&lt;'a, T&gt; WF(&amp;'a T) :- T: 'a</code></p>



<a name="217065157"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065157" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065157">(Nov 17 2020 at 21:24)</a>:</h4>
<p>the dyn trait code does the latter, right</p>



<a name="217065161"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065161" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065161">(Nov 17 2020 at 21:24)</a>:</h4>
<p>oh, maybe this is different actually</p>



<a name="217065184"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065184" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065184">(Nov 17 2020 at 21:25)</a>:</h4>
<p>I feel like <code>for&lt;'a, T&gt;...</code> is what we <em>ought</em> to be doing</p>



<a name="217065267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065267">(Nov 17 2020 at 21:26)</a>:</h4>
<p>Yes, although I'm not sure how it should work with const generics.</p>



<a name="217065319"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065319" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065319">(Nov 17 2020 at 21:26)</a>:</h4>
<p>Say more?</p>



<a name="217065374"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065374" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065374">(Nov 17 2020 at 21:27)</a>:</h4>
<p>okay, yeah in <code>match_ty</code>, anytime we push clauses/facts directly, that's a problem</p>



<a name="217065441"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065441" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065441">(Nov 17 2020 at 21:27)</a>:</h4>
<p>Should we produce <code>for&lt;T, const N: T&gt; ...</code> and trust that the goal has the right type for the const generics. Or should we produce <code>for &lt;const N: ActualType&gt; ...</code></p>



<a name="217065563"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065563" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065563">(Nov 17 2020 at 21:28)</a>:</h4>
<p>I guess I need a better example to think this through</p>



<a name="217065577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065577">(Nov 17 2020 at 21:28)</a>:</h4>
<p>yeah, I'm a bit confused</p>



<a name="217065617"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065617" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065617">(Nov 17 2020 at 21:29)</a>:</h4>
<p>I feel like the intuition is that the set of WF rules are something we can write down in a fixed place</p>



<a name="217065633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065633">(Nov 17 2020 at 21:29)</a>:</h4>
<p>or they are generated from struct/enum declarations</p>



<a name="217065674"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065674" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065674">(Nov 17 2020 at 21:29)</a>:</h4>
<p>ideally we wouldn't really <em>take</em> information from the user-given types</p>



<a name="217065679"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065679" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065679">(Nov 17 2020 at 21:29)</a>:</h4>
<p>Also, just to put code to my words: <a href="https://github.com/rust-lang/chalk/blob/e97bcf4578e8bc986c75b525d8c82f81aabbcadf/chalk-solve/src/clauses.rs#L853">this</a> isn't good.</p>



<a name="217065687"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065687" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065687">(Nov 17 2020 at 21:29)</a>:</h4>
<p>apart from the minimum we need</p>



<a name="217065748"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065748" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065748">(Nov 17 2020 at 21:30)</a>:</h4>
<p>yep</p>



<a name="217065758"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065758" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065758">(Nov 17 2020 at 21:30)</a>:</h4>
<p>harmless in some of those cases but the pattern is wrong</p>



<a name="217065764"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065764" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065764">(Nov 17 2020 at 21:30)</a>:</h4>
<p>(also, for things like <code>Ref</code>, we probably should be including <code>T: 'a</code>)</p>



<a name="217065851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065851">(Nov 17 2020 at 21:31)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/144729-wg-traits/topic/meeting.202020-11-17/near/217065617">said</a>:</p>
<blockquote>
<p>I feel like the intuition is that the set of WF rules are something we can write down in a fixed place</p>
</blockquote>
<p>I guess I'll see how well this works.</p>



<a name="217065868"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065868" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065868">(Nov 17 2020 at 21:31)</a>:</h4>
<p>ideally we'd be producing "canned" rules for built-in types</p>



<a name="217065887"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065887" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065887">(Nov 17 2020 at 21:31)</a>:</h4>
<p>Yeah, exactly</p>



<a name="217065896"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065896" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065896">(Nov 17 2020 at 21:31)</a>:</h4>
<p>this should actually be a really simple fix</p>



<a name="217065903"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065903" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065903">(Nov 17 2020 at 21:31)</a>:</h4>
<p>and I'm not sure if any of those rules have to reference constants, except perhaps <code>[T; N]</code></p>



<a name="217065917"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065917" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065917">(Nov 17 2020 at 21:31)</a>:</h4>
<p><a href="https://github.com/rust-lang/chalk/issues/614">chalk#614</a> biting us</p>



<a name="217065943"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065943" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065943">(Nov 17 2020 at 21:32)</a>:</h4>
<p>which I guess would be something like <code>for&lt;T, const N: usize&gt; WF([T; N]) :- WF(T)</code> ?</p>



<a name="217065979"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217065979" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217065979">(Nov 17 2020 at 21:32)</a>:</h4>
<p>Closures/generators in functions with const generics.</p>



<a name="217066002"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066002" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066002">(Nov 17 2020 at 21:32)</a>:</h4>
<p>but there are some ann... like maybe this one :)</p>



<a name="217066011"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066011" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066011">(Nov 17 2020 at 21:32)</a>:</h4>
<p><code>for&lt;T, const N: usize&gt; WF([T; N]) :- WF(T), T: Sized</code></p>



<a name="217066115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066115">(Nov 17 2020 at 21:33)</a>:</h4>
<p>closure generics are definitely a bit weird</p>



<a name="217066174"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066174" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066174">(Nov 17 2020 at 21:33)</a>:</h4>
<p>question: are there well formedness requirements for const params?</p>



<a name="217066280"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066280" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066280">(Nov 17 2020 at 21:34)</a>:</h4>
<p>like, should that be <code>for&lt;T, const N: usize&gt; WF([T; N]) :- WF(T), T: Sized, WF(N)</code></p>



<a name="217066289"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066289" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066289">(Nov 17 2020 at 21:34)</a>:</h4>
<p>There's <code>ConstEvaluatable</code> in rustc.</p>



<a name="217066332"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066332" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066332">(Nov 17 2020 at 21:35)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/144729-wg-traits/topic/meeting.202020-11-17/near/217066115">said</a>:</p>
<blockquote>
<p>closure generics are definitely a bit weird</p>
</blockquote>
<p>but I think the WF constraints <em>there</em> mostly come from the enclosing fn? maybe I'm overlooking some things</p>



<a name="217066474"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066474" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066474">(Nov 17 2020 at 21:36)</a>:</h4>
<p>What is <code>ConstEvaluatable</code>?</p>



<a name="217066598"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066598" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066598">(Nov 17 2020 at 21:37)</a>:</h4>
<p>Basically it means that the expression can be evaluated without UB, IIRC, but it's a bit out of scope for me</p>



<a name="217066664"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066664" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066664">(Nov 17 2020 at 21:38)</a>:</h4>
<p>so I guess the question is -- stepping back from this precise point -- do we feel like we're making progress on all the type-library related issues just now?</p>



<a name="217066673"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066673" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066673">(Nov 17 2020 at 21:38)</a>:</h4>
<p>other next steps?</p>



<a name="217066710"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066710" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066710">(Nov 17 2020 at 21:38)</a>:</h4>
<p>Yeah, type library is making good progress</p>



<a name="217066741"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066741" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066741">(Nov 17 2020 at 21:38)</a>:</h4>
<p>As far as things things that maybe can still be picked up</p>



<a name="217066759"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066759" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066759">(Nov 17 2020 at 21:39)</a>:</h4>
<p><code>dyn Trait</code> representation?</p>



<a name="217066770"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066770" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066770">(Nov 17 2020 at 21:39)</a>:</h4>
<p>that one jumped out at me</p>



<a name="217066778"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066778" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066778">(Nov 17 2020 at 21:39)</a>:</h4>
<p>the plan there was to consider refactoring rustc, it seems</p>



<a name="217066786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066786">(Nov 17 2020 at 21:39)</a>:</h4>
<p>Yeah</p>



<a name="217066794"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066794" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066794">(Nov 17 2020 at 21:39)</a>:</h4>
<p>and it seems fairly self-contained enough</p>



<a name="217066863"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066863" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066863">(Nov 17 2020 at 21:40)</a>:</h4>
<p>though might be a bit difficult for a complete beginner</p>



<a name="217066880"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066880" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066880">(Nov 17 2020 at 21:40)</a>:</h4>
<p>yeah, it'll be... interesting :)</p>



<a name="217066926"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066926" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066926">(Nov 17 2020 at 21:41)</a>:</h4>
<p>the other things that's a bit self-contained is removing <code>ReFree</code> in rustc</p>



<a name="217066933"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066933" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066933">(Nov 17 2020 at 21:41)</a>:</h4>
<p>but something tells me that's much harder</p>



<a name="217066961"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217066961" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217066961">(Nov 17 2020 at 21:41)</a>:</h4>
<p>I think so</p>



<a name="217067064"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067064" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067064">(Nov 17 2020 at 21:42)</a>:</h4>
<p>(side note, I think the param work I am doing maybe found a bug)</p>



<a name="217067074"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067074" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067074">(Nov 17 2020 at 21:42)</a>:</h4>
<p>anything else I'm missing?</p>



<a name="217067078"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067078" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067078">(Nov 17 2020 at 21:42)</a>:</h4>
<p>Oh, what bug?</p>



<a name="217067088"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067088" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067088">(Nov 17 2020 at 21:42)</a>:</h4>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="w">                </span><span class="bp">self</span><span class="p">.</span><span class="n">tcx</span><span class="p">.</span><span class="n">mk_const_var</span><span class="p">(</span><span class="n">const_var_id</span><span class="p">,</span><span class="w"> </span><span class="bp">self</span><span class="p">.</span><span class="n">tcx</span><span class="p">.</span><span class="n">type_of</span><span class="p">(</span><span class="n">param</span><span class="p">.</span><span class="n">def_id</span><span class="p">)).</span><span class="n">into</span><span class="p">()</span><span class="w"></span>
</code></pre></div>



<a name="217067106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067106">(Nov 17 2020 at 21:42)</a>:</h4>
<p>I'm pretty sure that this code is wrong if <code>type_of</code> has generic types</p>



<a name="217067133"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067133" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067133">(Nov 17 2020 at 21:42)</a>:</h4>
<p>I guess <code>fn foo&lt;T, const C: Bar&lt;T&gt;&gt;</code> something like that</p>



<a name="217067176"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067176" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067176">(Nov 17 2020 at 21:43)</a>:</h4>
<p>perhaps that's presently disallowed</p>



<a name="217067318"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067318" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067318">(Nov 17 2020 at 21:44)</a>:</h4>
<p>the only other thing I see in that list was finding out whether rust-analyzer performance was still an issue after the <code>TypeName</code> change</p>



<a name="217067354"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067354" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067354">(Nov 17 2020 at 21:45)</a>:</h4>
<p>under <code>min_const_generics</code> that would be disallowed I think</p>



<a name="217067366"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067366" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067366">(Nov 17 2020 at 21:45)</a>:</h4>
<p>under <code>min_const_generics</code> yes</p>



<a name="217067387"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067387" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067387">(Nov 17 2020 at 21:45)</a>:</h4>
<p>so, I did ask about that, and I don't think anyone saw a perf increase</p>



<a name="217067396"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067396" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067396">(Nov 17 2020 at 21:45)</a>:</h4>
<p>anyway i'll fix for now by adding <code>assert_no_generics</code> (one of my helpers I have...)</p>



<a name="217067428"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067428" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067428">(Nov 17 2020 at 21:45)</a>:</h4>
<p>but this is the kind of mismatch we overlook by not being explicit about where substitution is needed</p>



<a name="217067486"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067486" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067486">(Nov 17 2020 at 21:46)</a>:</h4>
<p>but I'll followup again at some point</p>



<a name="217067498"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067498" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067498">(Nov 17 2020 at 21:46)</a>:</h4>
<p>too bad</p>



<a name="217067516"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067516" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067516">(Nov 17 2020 at 21:46)</a>:</h4>
<p>yeah, was a bit shocked</p>



<a name="217067521"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067521" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067521">(Nov 17 2020 at 21:46)</a>:</h4>
<p>expected at least <em>some</em> noticeable perf change</p>



<a name="217067710"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067710" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067710">(Nov 17 2020 at 21:48)</a>:</h4>
<p>anyways, there's a couple open Chalk PRs that need only a few changes, so I might try to nag people to update them</p>



<a name="217067744"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067744" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067744">(Nov 17 2020 at 21:48)</a>:</h4>
<p>and/or update them myself</p>



<a name="217067760"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067760" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067760">(Nov 17 2020 at 21:48)</a>:</h4>
<p>anything needing reviews?</p>



<a name="217067771"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067771" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067771">(Nov 17 2020 at 21:48)</a>:</h4>
<p>nope</p>



<a name="217067794"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067794" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067794">(Nov 17 2020 at 21:49)</a>:</h4>
<p>well actually</p>



<a name="217067805"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067805" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067805">(Nov 17 2020 at 21:49)</a>:</h4>
<p>sem-syn equality?</p>



<a name="217067831"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067831" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067831">(Nov 17 2020 at 21:49)</a>:</h4>
<p>not sure how much of the review on prior PR carries over</p>



<a name="217067834"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067834" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067834">(Nov 17 2020 at 21:49)</a>:</h4>
<p>ah, has there been motion there</p>



<a name="217067841"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067841" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067841">(Nov 17 2020 at 21:49)</a>:</h4>
<p>well, not in a bit</p>



<a name="217067858"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067858" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067858">(Nov 17 2020 at 21:49)</a>:</h4>
<p>but I'm curious if this is a good place to break up the work?</p>



<a name="217067861"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067861" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067861">(Nov 17 2020 at 21:49)</a>:</h4>
<blockquote>
<p>Add TypeFlags for TyKind in chalk-ir <a href="https://github.com/rust-lang/chalk/issues/639">chalk#639</a></p>
</blockquote>



<a name="217067865"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067865" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067865">(Nov 17 2020 at 21:49)</a>:</h4>
<p>what's the status of that?</p>



<a name="217067892"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067892" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067892">(Nov 17 2020 at 21:50)</a>:</h4>
<p>there were some review comments</p>



<a name="217067929"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067929" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067929">(Nov 17 2020 at 21:50)</a>:</h4>
<p>looks like it needs some updating</p>



<a name="217067946"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217067946" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217067946">(Nov 17 2020 at 21:50)</a>:</h4>
<p>that need to be addressed, but overall looked good</p>



<a name="217068050"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068050" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068050">(Nov 17 2020 at 21:51)</a>:</h4>
<p>but yeah, <a href="https://github.com/rust-lang/chalk/issues/624">chalk#624</a> <a href="https://github.com/rust-lang/chalk/issues/633">chalk#633</a> and <a href="https://github.com/rust-lang/chalk/issues/639">chalk#639</a> only need small enough changes I can do the updates</p>



<a name="217068165"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068165" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068165">(Nov 17 2020 at 21:52)</a>:</h4>
<p>I can take a look at <a href="https://github.com/rust-lang/chalk/issues/589">chalk#589</a> I guess.. maybe :) still running quite short of time</p>



<a name="217068182"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068182" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068182">(Nov 17 2020 at 21:52)</a>:</h4>
<p>I'll ping someone (maybe <span class="user-mention" data-user-id="116009">@nikomatsakis</span>) after I do them just to get a final signoff</p>



<a name="217068194"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068194" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068194">(Nov 17 2020 at 21:52)</a>:</h4>
<p>seems like it's maybe close</p>



<a name="217068200"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068200" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068200">(Nov 17 2020 at 21:52)</a>:</h4>
<p>yeah, ping me</p>



<a name="217068207"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068207" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068207">(Nov 17 2020 at 21:52)</a>:</h4>
<p>ok, should we end meeting?</p>



<a name="217068208"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068208" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068208">(Nov 17 2020 at 21:52)</a>:</h4>
<p><span class="user-mention" data-user-id="230601">@Nathan Whitaker</span> status of sem-syn pr</p>



<a name="217068242"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068242" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068242">(Nov 17 2020 at 21:52)</a>:</h4>
<p>yeah, I think we've gotten through everything</p>



<a name="217068264"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068264" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068264">(Nov 17 2020 at 21:53)</a>:</h4>
<p><span class="user-mention" data-user-id="116118">@Matthew Jasper</span> are you going to make the <code>match_ty</code> changes?</p>



<a name="217068425"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068425" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Matthew Jasper <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068425">(Nov 17 2020 at 21:54)</a>:</h4>
<p>Yes, but it may be a few days before I get to it.</p>



<a name="217068507"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/meeting%202020-11-17/near/217068507" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/meeting.202020-11-17.html#217068507">(Nov 17 2020 at 21:55)</a>:</h4>
<p>No rush :)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>